package pkg;

import java.util.ArrayList;

public class Sundae extends Product 
{
	public static final double SMALL_VOLUME = 2.5;
	public static final double MEDIUM_VOLUME = 3.5;
	public static final double LARGE_VOLUME = 5.0;

	public static final double SMALL_MODIFIER = 1.0;
	public static final double MEDIUM_MODIFIER = 1.15;
	public static final double LARGE_MODIFIER = 1.25;
	
	String sundae_label;
	Toppings sundae_topping;
	Size sundae_size;
	Sundae_Category sundae_category;
	ArrayList<Flavor> sundae_flavor;
	
	ArrayList<Size> size;
	ArrayList<Toppings> toppings;
	ArrayList<Sundae_Category> category;
	ArrayList<Flavor> flavors;
	
	public Sundae(Sundae_Category c_category, ArrayList<Flavor> c_flavors)
	{
		sundae_category = c_category;
		sundae_flavor = c_flavors;
	}
	
	public Sundae()
	{
		toppings = new ArrayList<Toppings>();
		toppings.add(new Crushed_Peanuts());
		toppings.add(new Maraschino_Cherries());
		toppings.add(new Sprinkles());
		
		category = new ArrayList<Sundae_Category>();
		category.add(new Classic());
		category.add(new Premium());
		
		flavors = new ArrayList<Flavor>();
		flavors.add(new IceCream_Chocolate());
		flavors.add(new IceCream_Mint());
		flavors.add(new IceCream_RockyRoad());
		flavors.add(new IceCream_Vanilla());
		flavors.add(new IceCream_Strawberry());
		
		size = new ArrayList<Size>();
		size.add(new Size_Small(SMALL_VOLUME, SMALL_MODIFIER));
		size.add(new Size_Medium(MEDIUM_VOLUME, MEDIUM_MODIFIER));
		size.add(new Size_Large(LARGE_VOLUME, LARGE_MODIFIER));
	}
	public double getPrice()
	{
		return sundae_category.getPrice();
	}
	public String getGenericLabel()
	{
		return "Sundae";
	}
	public String getName()
	{
		return sundae_category.getLabel();
		
		//This should return the name of the sundae?
		//Need a circumstance where it adds flavors
	}
	public String getDirections()
	{
		return "Under Construction";
	}
	public Product submenuPrompt()
	{
		System.out.println("What type of sundae would you like?\n");
		System.out.println("1 - Banana Split");
		System.out.println("2 - Hot Fudge");
		System.out.println("3 - Caramel");
		return null;
		
		//call toppings?
		//Enter item number?
	}
}
